<!--
  文件描述：
  创建时间：2023/8/29 10:50
  创建人：Zhaipeixiu
-->
<template>
  <div id="mapContainer">
  </div>
</template>

<script>
import * as Cesium from 'cesium/Cesium'
import CesiumMethods from "@/assets/js/cesium-map/cesiumMethods";
Cesium.Ion.defaultAccessToken =
    "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI0ODhkMjVkNy0wNWJlLTRhMDYtOTRiNy1jMzRhMTAzMzY4YmIiLCJpZCI6OTUwNTQsImlhdCI6MTY1MzQ2NDk2M30.bbGL4_ehI5p0sbErqnC4zSoSI79dQrfu5t8ZgKWY5DU";

export default {
  name: 'base-miniMap',
  components: {},
  data() {
    return {
      cus_cesium: {},
      // Cesium影像图层
      imagery_provider_wms: new Cesium.WebMapServiceImageryProvider({
        // 这里是你的 geoserver服务点击查看图层的url
        url: 'https://172.10.0.109:8888/geoserver/ne/wms',
        // 这里是自定义的图层名称
        layers: 'ne:output',
        parameters: {
          service: 'WMS',
          version: '1.1.1',
          format: 'image/png8',
          transparent: true
        }
      }),

      tianditu_wms: new Cesium.WebMapTileServiceImageryProvider({
        url: 'http://t0.tianditu.gov.cn/vec_w/wmts?tk=0ad2bc698de318ae06deedcb2a2d4d68',
        layer: `tdtBasicLayer${'img'}`,
        style: 'default',
        format: 'tiles',
        tileMatrixSetID: 'w',
        maximumLevel: 18, // 必须加上最大级数
        subdomains: ["t0", "t1", "t2", "t3", "t4", "t5", "t6", "t7"]
        })
    }
  },
  // 监听属性 类似于data概念
  computed: {},
  // 方法集合
  methods: {
    addLine(listPoints){
      this.cus_cesium.addAirline(listPoints)
    },
    /**
     * 移除地图中全部实体元素，包括primitive和Entity
     */
    clearElemts(){
      this.cus_cesium.removeAllElemts()
    },
    /**
     * 在指定位置添加Point，并在Point右上方添加字符串标注
     * @param lng 十进制角度经度
     * @param lat 十进制角度经度
     * @param label 标注字符串
     */
    locate(lng,lat,label){
      this.cus_cesium.locateEntity(lng,lat,label)
    }
  },
  // 监控data中的数据变化
  watch: {},
  // 生命周期 - 创建完成（可以访问当前this实例）
  created() {
  },
  mounted() {
    let viewer = new Cesium.Viewer('mapContainer', {
      infoBox: false,     // 是否显示信息窗口
      geocoder: false,    // 是否显示查询按钮
      homeButton: false,  // 是否显示home按钮
      sceneModePicker: false, // 控制查看器的显示模式
      baseLayerPicker: false, // 是否显示图层选择器
      navigationHelpButton: false,  // 是否显示帮助
      timeline: false,      // 是否显示时间线
      animation: false,     // 是否显示时间动画仪表盘
      fullscreenButton: false,    // 是否显示全屏按钮
      sceneMode: Cesium.SceneMode.SCENE2D,   // 视图模式
      // COLUMBUS_VIEW 哥伦布查看模式。放置地图的2.5D透视图平面和高度非零的对象绘制在其上方。
      // imageryProvider: this.tianditu_wms  // 影像图层
    })
    this.cus_cesium = new CesiumMethods(viewer);
  },
  // 生命周期 - 销毁之前
  destroyed() {
  }
}
</script>

<style scoped lang="css">
#mapContainer{
  width: 100%;
  height: 100%;
  /* top: 50%; */
}
</style>
